sciencewikiaorg_ru-20200216-history
Шаблон:Location map skew/doc
Creates a location map as a composite image of an existing map in either equirectangular projection or skewed projection, with multiple (up to 4) markers and optional labels superimposed onto it. This template functions in the style of Template:Location_map, but can auto-skew longitudes and allows 4 markers and labels (rather than just one marker). Note: For brevity, parameters "pos" & "bg" are aliases (for parameters "position" & "background"). : Also see: For an unlimited list of markers/labels, see: Template:Location_map+, : which specifies points as a coded template list of markers/labels. Usage Parameter locname refers to {Template:Location map locname} containing the image name and coordinates of a particular map. BEWARE: Omit "px" from marksize or width or else the map might span entire screen. The MediaWiki-language coding of the template cannot detect "px" inside numeric parameters. Available maps List of live templates named Template:Location_map_skew_ (without "Template:" prefix here): Location_map_SwedenCIAx Creating new maps #Find an appropriate blank map in equirectangular projection (otherwise, coordinates will drift off, typically further north) #Create a template named "Template:Location_map_''locname''" (copy the content of any other map template into it and enter appropriate values). #Set default parameter values (using those parameter names), such as setting "mark" with image-file name and "marksize" for pixels wide/tall, or set default label font size ("label_size = 78" percent). #Parameter names not used by "Template:Location_map" will be ignored by it, and only used for multiple-markers (such as defaulting "label2_size = 78" percent, or "mark2size=7" pixels). Examples Map with label "Pag" and "Anytown" (degrees) Map with 3 aligned labels (decimal) Non-rectangular map of Sweden Map with some labels outside map Unskewed Sweden: Location_map_many Unskewed label of Sweden Map with 9 markers (decimal) Map with a custom label and text background Map with no caption Western Hemisphere Country that crosses 180° meridian Implementation notes The map and markers are implemented using the typical wiki parser-functions (" "), described at: WikiMedia Help:ParserFunctions. Explanation of skewing The skewing of map coordinates, when placing markers/labels on the map image, is performed by a linear interpolation of the longitude relative to the height of the latitude (higher latitudes skew longitude more). A skew factor < 1.0 squeezes longitudes together near top, while a skew factor > 1.0 spreads longitudes apart near the top. The formula is roughly: :::To skew by latitude ratio (skewing longitude more towards top): :::* skew factor = ( (1 - skew) * lat_ratio + skew ), where: :::* lat_ratio = (maxlat - latitude) / (maxlat-minlat). Use of HTML divisions The map with markers/labels is implemented as nested HTML divisions. The map-image is in an HTML division, containing each point as a percent-locator division containing a marker-image sub-division plus a label sub-division. Each point is calculated (for a percent-locator division) with X or Y coordinate "XX.X%" or "YY.Y%" as follows: * The div-tag is " ". * Within that division the marker/label sub-divisions are coded as: :* . * For label position, the options are shifted as: :* when position=left, adds "left: -6.5em; text-align: right;" :* when position=right, adds "left: 0.5em; text-align: left;" :* when position=top, adds "top:-2.65em; left:-3em; text-align: center;" :* when position=bottom, adds "top:-0.15em; left: -3em; text-align: center;" to div-tag. Accuracy of numeric calculations depends on the particular wiki server handling the webpage. See also * Template:Location map - placing one marker/label by latitude/longitude. * Template:Location map many - placing multiple markers/labels by latitude/longitude. * Template:Location map+ - placing unlimited list of markers/labels. Category:Graphic templates Category:Mapping templates